Systems and methods of detecting, identifying and classifying objects positioned on a surface

ABSTRACT

Systems and methods of detecting, identifying, and classifying objects positioned on a shelf are provided. In one exemplary embodiment, a sensor pad comprises a plurality of electrical contacts disposed in the pad as a matrix of rows and columns of electrical contacts. Further, each contact corresponds to a different surface area of the pad and has a first electrical conductor positioned on a first layer and a second electrical conductor positioned opposite to the first conductor on a second layer. Also, at least one of the first and second conductors is operable to vary in resistance or capacitance based on an amount of pressure applied to that conductor. In addition, each contact is configured to enable an electrical connection between the first and second conductors with a resistance or capacitance that varies based on an amount of pressure applied to a corresponding area of the pad when an object is positioned on that pad.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/679,734, filed Nov. 11, 2019, which claims the benefit of U.S. Prov.App. No. 62/770,836, filed Nov. 23, 2018, all of which are herebyincorporated by reference as if fully set forth herein.

FIELD OF DISCLOSURE

The present invention relates generally to detecting, identifying andclassifying objects and in particular to detecting, identifying andclassifying objects positioned on a surface.

BACKGROUND

In the retail environment, there is a need to autonomously detect,identify and classify retail products placed on a surface (e.g., shelfin an industrial, commercial or retail environment). In particular, suchdetection, identification, and classification of retail products mayaddress various problems within a retail setting, such as theft,out-of-stock product, misplaced product, and the like. Computer visionsystems and artificial intelligence (AI) may utilize information aboutproducts and product location on a surface to help resolve theseproblems. For instance, these systems can facilitate detection and/orprediction of out-of-stock or misplaced merchandise based on analysis ofinteractions between customers and specific product on a retail shelf.In current applications, products are detected, identified andclassified by hand or through the use of video cameras and depthsensors.

Accordingly, there is a need for improved techniques for detecting,identifying and classifying objects positioned on a surface such as on ashelf in a retail environment. In addition, other desirable features andcharacteristics of the present disclosure will become apparent from thesubsequent detailed description and embodiments, taken in conjunctionwith the accompanying figures and the foregoing technical field andbackground.

The Background section of this document is provided to place embodimentsof the present disclosure in technological and operational context, toassist those of skill in the art in understanding their scope andutility. Unless explicitly identified as such, no statement herein isadmitted to be prior art merely by its inclusion in the Backgroundsection.

SUMMARY

The following presents a simplified summary of the disclosure in orderto provide a basic understanding to those of skill in the art. Thissummary is not an extensive overview of the disclosure and is notintended to identify key/critical elements of embodiments of thedisclosure or to delineate the scope of the disclosure. The sole purposeof this summary is to present some concepts disclosed herein in asimplified form as a prelude to the more detailed description that ispresented later.

Briefly described, embodiment of the present disclosure relate tosystems and methods for performing node deployment. According to oneaspect, a sensor pad comprises a plurality of electrical contactsdisposed in the pad as a matrix of rows and columns of electricalcontacts. Further, each contact corresponds to a different surface areaof the pad and has a first electrical conductor positioned on a firstlayer and a second electrical conductor positioned opposite to the firstconductor on a second layer. Also, at least one of the first and secondconductors is operable to vary in resistance or capacitance based on anamount of pressure applied to that conductor. Each contact is configuredto enable an electrical connection between the first and secondconductors with a resistance or capacitance that varies based on anamount of pressure applied to a corresponding area of the pad when anobject is positioned on that pad. In addition, the matrix of contacts isoperable to be scanned to obtain resistances or capacitances for therows and columns of contacts so as to enable detection of an objectplaced on or removed from the pad.

According to another aspect, each electrical conductor is a diode.

According to another aspect, each electrical conductor is a resistor orcapacitor.

According to another aspect, each contact is formed with conductive ink.

According to another aspect, the sensor pad further includes a thirdlayer formed by an electrically resistive or capacitive material andpositioned between the first layer and the second layer.

According to another aspect, the sensor pad further includes a baselayer configured to provide stability to the sensor pad.

According to one aspect, a sensor pad comprises a plurality ofelectrical contacts disposed in the pad as a matrix of rows and columnsof electrical contacts. Further, each contact corresponds to a differentsurface area of the pad and has a first electrical conductor positionedon a first layer and a second electrical conductor positioned proximatethe first conductor on the first layer. Also, at least one of the firstand second conductors is operable to vary in resistance or capacitancebased on an amount of pressure applied to that conductor. Each contactis configured to enable an electrical connection between the first andsecond conductors with a resistance or capacitance that varies based onan amount of pressure applied to a corresponding area of the pad when anobject is positioned on that pad. In addition, the matrix of contacts isoperable to be scanned to obtain resistances or capacitances for therows and columns of contacts so as to enable detection of an objectplaced on or removed from the pad.

According to another aspect, the sensor pad further includes a pluralityof weight sensors disposed outside the first and second layers andoperable to measure a weight of an object placed anywhere on the surfaceof the pad. Each weight sensor corresponds to a certain surface area ofthe pad that overlaps a surface area of the pad corresponding to atleast one other weight sensor, with each weight sensor being operable tomeasure an amount of pressure applied to a corresponding surface area ofthe pad when an object is positioned on the pad. Also, the pressuremeasurements obtained from the weight sensors may further enable thedetection of an object placed on or removed from the surface of the pad.

According to another aspect, the plurality of electrical contacts arecomposed of conductive ink.

According to another aspect, the sensor pad further includes a baselayer configured to provide stability to the sensor pad and a secondlayer formed by an electrically resistive or capacitive material.Further, the first layer is positioned between the base layer and thesecond layer.

According to one aspect, a computer-implemented method of detecting anobject placed on a sensor pad having a plurality of electrical contactsdisposed in the pad as a matrix of rows and columns of electricalcontacts comprises, during a scan of the matrix of contacts, receiving,by a processor, from each row and column of contacts, an indication of aresistance or capacitance of that row or column of contacts. Eachcontact corresponds to a different surface area of the pad and has afirst electrical conductor positioned on a first layer and a secondelectrical conductor positioned opposite to the first conductor on asecond layer. Further, at least one of the first and second conductorsis operable to vary in resistance or capacitance based on an amount ofpressure applied to that conductor. Also, each contact is configured toenable an electrical connection between the first and second conductorswith a resistance or capacitance that varies based on an amount ofpressure applied to a corresponding area of the pad when an object ispositioned on that pad. In addition, the matrix of contacts is operableto be scanned to obtain resistances or capacitances for the rows andcolumns of contacts so as to enable detection of an object placed on orremoved from the pad. The method also includes determining whether anobject has been placed on or removed from the pad based on the scannedresistances or capacitances of the rows and columns of contacts.

According to another aspect, the method further comprises, in responseto determining that an object has been placed on the pad, determining atleast one of a size, a shape, a location, a center of mass and a weightof the object based on the resistances or capacitances of each row andcolumn of the corresponding contacts.

According to another aspect, the method further comprises determiningwhether an object placed on the pad is properly positioned on the pad.

According to another aspect, the method further comprises determiningwhether an object has been removed from the pad based on the resistancesor capacitances of each row and column of the corresponding contacts.

According to one aspect, a system comprises a processor, a sensor padand a plurality of analog-to-digital converters (ADCs) operationallycoupled between the processor and the sensor pad. The plurality ofelectrical contacts being disposed in the pad as a matrix of rows andcolumns. Further, each contact corresponds to a different surface areaof the pad and has a first electrical conductor positioned on a firstlayer and a second electrical conductor positioned opposite to the firstconductor on a second layer. Also, at least one of the first and secondconductors is operable to vary in resistance or capacitance based on anamount of pressure applied to that conductor. In addition, each contactis configured to enable an electrical connection between the first andsecond conductors with a resistance or capacitance that varies based onan amount of pressure applied to a corresponding area of the pad when anobject is positioned on that pad. The matrix of contacts is operable tobe scanned to obtain resistances or capacitances for the rows andcolumns of contacts so as to enable detection of an object placed on orremoved from the pad. Each ADC corresponds to a different row or columnof contacts and is operable to obtain an indication of a resistance orcapacitance of that row or column of contacts. Finally, the processor isconfigured to scan the matrix of contacts via the ADCs to determinewhether an object has been placed on the pad based on the scannedresistances or capacitances of the rows and columns of electricalcontacts.

According to another aspect, each electrical contact is composed ofconductive ink.

According to another aspect, the sensor pad further comprises a thirdlayer composed of an electrically resistive or capacitive material anddisposed between the first layer and the second layer.

According to another aspect, the sensor pad further comprises a baselayer configured to provide stability to the sensor pad.

According to another aspect, the processor is further configured todetermine at least one of a size, a shape, a location, a center of massand a weight of the object based on the resistance or capacitance of atleast one row and column of contacts responsive to determining that anobject has been placed on the pad.

According to another aspect, the processor is further configured todetermine whether an object placed on the pad is properly positioned onthe pad based on a predetermined object map for that pad.

According to another aspect, the processor is further configured todetermine whether an object has been removed from the pad based on theresistance or capacitance of at least one row and column of contacts.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will now be described more fully hereinafter withreference to the accompanying drawings, in which embodiments of thedisclosure are shown. However, this disclosure should not be construedas limited to the embodiments set forth herein. Rather, theseembodiments are provided so that this disclosure will be thorough andcomplete, and will fully convey the scope of the disclosure to thoseskilled in the art. Like numbers refer to like elements throughout.

FIG. 1 illustrates one embodiment of a system of detecting, identifyingand classifying objects positioned on a surface in accordance withvarious aspects as described herein.

FIG. 2 illustrates various embodiments of contact structures inaccordance with various aspects as described herein.

FIG. 3 illustrates a use case of one embodiment of a system ofdetecting, identifying and classifying objects positioned on a surfacein accordance with various aspects as described herein.

FIGS. 4A-B illustrate other embodiments of a system of detecting,identifying and classifying objects positioned on a surface inaccordance with various aspects as described herein.

FIG. 5 illustrates one embodiment of a method of detecting, identifyingand classifying objects positioned on a surface in accordance withvarious aspects as described herein.

FIG. 6 illustrates one embodiment of a system of detecting, identifyingand classifying objects positioned on a surface in accordance withvarious aspects as described herein.

FIG. 7 illustrates another embodiment of a method of detecting,identifying and classifying objects positioned on a surface inaccordance with various aspects as described herein.

FIG. 8 illustrates a use case of another embodiment of a system ofdetecting, identifying and classifying objects positioned on a surfacein accordance with various aspects as described herein.

FIG. 9 illustrates another embodiment of a system of detecting,identifying and classifying objects positioned on a surface inaccordance with various aspects as described herein.

DETAILED DESCRIPTION

For simplicity and illustrative purposes, the present disclosure isdescribed by referring mainly to an exemplary embodiment thereof. In thefollowing description, numerous specific details are set forth in orderto provide a thorough understanding of the present disclosure. However,it will be readily apparent to one of ordinary skill in the art that thepresent disclosure may be practiced without limitation to these specificdetails.

This disclosure describes systems and methods of detecting, identifyingand classifying objects on a surface such as on a shelf in retail areprovided. For example, FIG. 1 illustrates one embodiment of a system 100of detecting, identifying and classifying objects positioned on asurface in accordance with various aspects as described herein. In FIG.1, the system 100 includes a processor module 110 and a sensor pad 101.The sensor pad 101 includes scanning matrix interconnections having rowinterconnections 105 a-c and column interconnections 107 a-c toelectrical contacts 102 a-i. As shown in FIG. 1, the contacts 102 a-d,102 g and 102 i are open (i.e., light grey) while the contacts 102 e-fand 102 h are closed (i.e., dark grey). Each contact 102 a-i may includea first electrical conductor 103 a-i on a first layer of the sensor pad101 that is electrically coupled to one of the column interconnections107 a-c, a second electrical conductor proximate and below the firstconductor 103 a-i on a second layer of the sensor pad 101 and a diode104 a-i electrically coupled between the second conductor and one of therow interconnections 105 a-c. In operation, when the first electricalconductor 103 a-i receives a force such as from the placement of anobject onto a surface area of the pad 101 associated with the contact102 a-i, the first electrical conductor 103 a-i is actuated towards andmakes contact with the second electrical conductor, resulting in thediode 104 a-i having a voltage drop sufficient to enable current flowthrough that diode. In another embodiment, resistors replace the diodes104 a-i in FIG. 1, with the voltage across the resistor enabling acertain current flow based on the amount of resistance of that resistor.In one example, these resistors are composed of electrically resistivematerial such as Velastat™, which is composed of polymeric foil (e.g.,polyolefins) impregnated with carbon black (e.g., paracrystallinecarbon) to make it electrically conductive. As such, the resistance ofsuch electrically resistive material may vary based on the amount offorce (e.g., weight) such as from the placement of an object onto asurface area of the pad 101 associated with the corresponding contact.In yet another embodiment, capacitors (e.g., capacitive sensors) replacethe diodes 104 a-i in FIG. 1, with the capacitance of each capacitorvarying based on the amount of force applied to a surface area of thepad 101 associated with the corresponding contact. The capacitancechange of each capacitor of the capacitive matrix can be measured todetermine the amount of force applied to location(s) on the surface areaof the pad 101. Further, the first or second layer may includepiezo-capacitive technology.

In FIG. 1, the processor module 111 includes a row/columnanalog-to-digital converter (ADC) bank, a receiver circuit 115, a matrixscan circuit 117, an object placement circuit 119, an objectdetermination circuit 121, an object positioned circuit 123, an objectmap 125, the like, or any combination thereof. Each of the rowinterconnections 105 a-c is electrically coupled to a corresponding ADCof the ADC bank 113. Similarly, each of the column interconnections 107a-c is electrically coupled to a corresponding ADC of the ADC bank 113.In operation, during a scan of the matrix of contacts 102 a-i controlledby the matrix scan circuit 117, a receiver circuit 115 receives, fromeach row and column of contacts 102 a-i, an indication of a resistanceor capacitance of that row or column of contacts 102 a-i. The objectplacement circuit 119 then determines whether an object has been placedor removed on the pad 101. In response to determining that an object hasbeen placed on the pad 101, the object determination circuit 121determines at least one of a size, shape, location on the pad 101,center of mass, weight, and the like of the object based on theresistances or capacitances of at least one row or column of contacts.The object positioned circuit 123 then determines whether an objectplaced on the pad 101 is properly positioned on the pad 101 based on apredetermined object map 125 of the pad 101 and the determined size,shape, location, center of mass, weight, or the like of the object. Theobject map 125 includes the expected placement of certain objects on thepad, with each object being characterized by at least one of the size,shape, location on the pad, a center of mass, weight, and the like.

In another embodiment, the sensor pad 101 includes a plurality of weightsensors disposed between the first and second layers. Each weight sensorcorresponds to a different surface area of the pad and is operable tomeasure an amount of pressure applied to a corresponding surface area ofthe pad when an object is positioned on the pad. Also, the pressuremeasurements obtained from the weight sensors further enable thedetection of an object placed on or removed from the surface of the pad.In one example, the sensor pad 101 has planar dimensions of ninetycentimeters (90 cm) by thirty centimeters (30 cm) with eighteen (18)weight sensors disposed at different locations in the pad 101. In oneexample, the weight sensors are disposed as a matrix in the pad 101. Inanother example, the weight sensors are equidistantly disposed as atwo-dimensional arrangement in the pad 101.

In another embodiment, one or more pressure measurements obtained fromone or more weight sensors enable the determination of the center ofmass of an object positioned on the pad.

FIG. 2 illustrates various embodiments of contact structures inaccordance with various aspects as described herein. In FIG. 2, eachcontact structure 201, 211 a-c, 221 a-b includes a first layer 203, 213a-c, 223 a-b having a first electrical conductor 207, 217 a-c, 227 a-bdisposed thereon. Further, each contact structure 201, 211 a-c, 221 a-bincludes a second layer 205, 215 a-c, 225 a-b having a second electricalconductor 209, 219 a-c, 229 a-b disposed opposite to the first conductor207, 217 a-c, 227 a-b and on the second layer 205, 215 a-c, 225 a-b. Thecontact structure 201 includes a contact area disposed between the firstand second conductors 207, 209 having a flat surface. In comparison, thecontact structures 211 a,c have a molded contact area formed by thefirst layer 213 a,c having a curved surface and a similarly curved firstconductor 215 a,c disposed thereon. Similarly, the contact structure 211b has a molded contact area formed by a top layer of the structure 211 bhaving a curved surface. Alternatively, each contact structure 221 a-bincludes a metal membrane disposed between a top layer and the firstlayer of the structure 211 a-b. Further, each contact structure 221 a-bincludes a contact area disposed between the first and second conductors225 a-b, 227 a-b having a flat surface. The contact structure 221 a hasa top layer with a curved surface while the contact structure 221 b hasa top layer with a flat surface.

FIG. 3 illustrates a use case of one embodiment of a scanning matrix 304in accordance with various aspects described herein. In FIG. 3, anobject 302 is placed on the sensor pad 304. In one example, the weightof the object 302 applies pressure to contacts 306 a-d, which inresponse, closes each contact 306 a-d, resulting in an electricalconnection. In this example, a processor via an ADC bank scans the rowsand columns of the contact matrix to determine that contacts 306 a-d areclosed while the other contacts remain open. In another example, theweight of the object 302 applies pressure to contacts 306 a-d, which inresponse, changes a capacitance of each contact 306 a-d. In thisexample, a processor via an ADC bank scans the rows and columns of thecontact matrix to determine the capacitance of each contact 306 a-d.Further, the processor may determine at least one of a size, a shape, acenter of mass, a weight, and a location of the object 302 based onsignals received from the contact matrix via the ADC bank. This contactmatrix may be represented by a matrix or array of points, with eachpoint associated with a corresponding surface area of the sensor pad304. Further, each point may represent a certain amount of pressureapplied to the corresponding surface area. The processor may determineat least one of a size, a shape, a center of mass, a weight, and alocation of the object 302 based on this array of points.

FIGS. 4A-B illustrate other embodiments of a system of detecting,identifying and classifying objects positioned on a surface inaccordance with various aspects as described herein. In FIG. 4A, thesystem 400 a includes a microcontroller 412 and a sensor pad 401 ahaving a film layer 402, a electrically resistive or capacitive materiallayer 404, a base layer 406, a matrix of contacts having a first matrixof conductors 408 and a second matrix of conductors 410. The matrix ofcontacts having rows and columns of contacts and as such, the first andsecond matrices of conductors 408, 410 having rows and columns of thoseconductors.

In one example, the first matrix of conductors 408 may be disposed onthe film layer 402. The first matrix of conductors 408 may be composedof electronic ink and which may be printed on the film layer 402.Further, the second matrix of conductors 410 may be disposed on the baselayer 406. The second matrix of conductors 410 may be composed ofelectronic ink which may be printed on the base layer 410. Further, themicrocontroller 412 may be positioned on the base layer 406 andelectrically coupled to the matrix of contacts via an ADC bankintegrated with the microcontroller 412.

As illustrated in FIG. 4A, the first matrix of conductors 408 and thesecond matrix of conductors 410 may be positioned opposite each othersuch that a conductor from the first matrix and a conductor from thesecond matrix form an opposing pair of conductors. Furthermore, thelayer of electrically resistive or capacitive material 404 may bedisposed between the first and second matrices of conductors. In oneexample, the layer of electrically resistive material 404 may beVelastat™.

In FIG. 4B, the system 400 b includes a microcontroller 462 having arow/column ADC bank and a sensor pad 401 b having a film layer 452, anelectrically resistive or capacitive material layer 454, a base layer456, a first matrix of conductors 458, and a second matrix of conductors460. In one example, the layer of electrically resistive or capacitivematerial 454 may be disposed on or otherwise integrated with the layerof film 452. The layer of electrically resistive or capacitive material404 may be Velastat™. Further, the first and second matrices ofconductors 458, 460 may be attached or otherwise integrated with thebase layer 456. The first and second matrices of conductors 458, 460 maybe composed of electronic ink and may be printed on the base layer 456.The microcontroller 462 may be positioned on the base layer 456. Inaddition, the first and second matrices of conductors 458, 460 may bepositioned on the base layer 456 such that a conductor from the firstmatrix and a conductor from the second matrix represent an adjacent pairof conductors.

FIG. 5 illustrates one embodiment of a method 500 of detecting,identifying and classifying objects positioned on a surface inaccordance with various aspects as described herein. In variousexamples, the method 500 may be performed by any of the processorsdescribed herein. Although the steps of method 500 are presented in aparticular order, this is only for simplicity. The steps of method 500may be performed in a different order and/or not every step may beperformed.

In step 502, a signal indicative of whether an electrical contact isformed by a pair of conductive pads is generated. For example, when anobject is placed on a sensing pad, such as the object detection andclassification system 400 of FIG. 4A or the object detection andclassification system 450 of FIG. 4B, pressure from the object may causean electrical contact to be formed between one or more pairs ofconductive pads. In this example, each pair of conductive pads that haveformed an electrical contact may generate a signal indicating that thecontact has been made. At the same time, each pair of conductive padsthat have not formed an electrical contact may generate a signalindicating that a contact has not been made.

In determination step 504, a determination of whether an object ispresent may be made. For example, if one or more signals indicating thatone or more contacts have been formed are received, then a determinationthat an object is present may be made based on the received signals. Ifan object is determined to not be present (i.e., determination step504=“No”), then the method may proceed to determination step 506.

In determination step 506, a determination of whether an object waspreviously present is made. For example, an individual may pick up orotherwise remove an object from a shelf in which a sensing pad isutilized. Prior to the object being removed, corresponding pairs ofconductive pads may have been generating signals indicating that theobject was present (e.g., electrical contact between pairs). Once theobject is removed, the corresponding pairs of conductive pads will thengenerate signals indicating that an object is not present (e.g., noelectrical contact between pairs). Thus, in determination step 506, acomparison of previously received signals and presently received signalsmay be made. If an object is determined to have been previously present(i.e., determination step 508=“Yes”), then the method may proceed tostep 508. Otherwise, the method may return to step 502.

In step 508, a determination that an object has been removed may be madeand a notification of removal may be generated. In various examples, theremoval notification may include an identification of the removedobject. Such identification may be based on a prior detection of theobject. The removal notification may also include, for example,information regarding timing of the object removal (e.g., date and timethe object was removed) as well as other information about the object(e.g., a size of the object, a center of mass of the object, a weight ofthe object, a shape of the object, a location from which the object wasremoved, etc.). After step 508, the method may return to step 502.

Returning to determination step 504, if an object is determined to bepresent (i.e., determination step 504=“Yes”), then the method mayproceed to determination step 510.

In determination step 510, a determination of whether the object isnewly present may be made. For example, an object may be newly stockedon a shelf or placed back on a shelf (in either a proper location or awrong location). Prior to the object being placed on the shelf,corresponding pairs of conductive pads may have been generating signalsindicating that no object was present (e.g., no electrical contactbetween pairs). Once an object is placed on the shelf, correspondingpairs of conductive pads may generate signals indicating that an objectis present (e.g., electrical contact between pairs). Thus, indetermination step 510, a comparison of previously received signals andpresently received signals may be made. If an object is determined to benewly present (i.e., determination step 510=“Yes”), then the method 500may proceed to step 512. Otherwise, the method 500 may return to step502.

In step 512, a size, a shape, a location, a center of mass, and a weightof the object may be determined. In various examples, a sensing pad(e.g., object detection and classification system 400 or objectdetection and classification system 450) may have a fixed size. Inaddition, each conductive pad within a matrix may be uniquelyidentifiable and a position of each conductive pad relative to thematrix may be identified. Thus, when an object is placed in one cornerof the sensing pad and electrical contacts are formed by correspondingpairs of conductive pads, for example, it may be determined that theobject was placed in the corner because the location of thecorresponding conductive pairs is already known. Similarly, a size and ashape of the object may be determined based on a number of electricalcontacts formed by pairs of conductive pads as well as the relationshipof those pairs of conductive pads to each other and other pairs ofconductive pads not forming electrical contacts.

In step 514, an identification may be estimated or otherwise made basedat least in part on the determined size, shape, location, center ofmass, and weight of the object. In various examples, a proper locationfor an object (e.g., top shelf in first aisle) may be previouslydetermined. Furthermore, a given size, a given shape, a given center ofmass, and a given weight of an object may be previously determined. Insome examples, such previously determined information may be maintainedin a planogram or other collection of information (e.g., a database, adata store, a file, etc.). Thus, an identification of a detected objectmay be estimated or otherwise made by comparing the informationdetermined in step 512 with the previously determined information fromthe planogram or other collection of information.

In determination step 516, a determination of whether of an object is ina proper location may be made. For example, if an identification of theobject may be estimated in step 514, then a determination that theobject is in a proper location may be made in determination step 516.Otherwise, if an identification of the object may not be estimated orotherwise made in step 514 or an identifiable object is known to bemisplaced, then a determination that the object is not in a properlocation may be made in determination step 516.

If a determination that the object is in a proper location is made(i.e., determination step 516=“Yes”), then the method 500 may return tostep 502.

If a determination that the object is not in a proper location is made(i.e., determination step 516=“No”), then the method 500 may proceed tostep 518.

In step 518, a determination that the object is misplaced may be madeand a notification regarding the misplaced object may be generated. Invarious examples, the misplaced object notification may includeinformation about the misplaced object. The included information mayinclude, for example, a determined size, shape, location, center ofmass, and weight of the misplaced object. The included information mayalso include, for example, an identification of the misplaced object.After the misplaced object notification is generated, the method 500 mayreturn to step 502.

FIG. 6 illustrates one embodiment of a system 600 of detecting,identifying and classifying objects positioned on a surface inaccordance with various aspects as described herein. In FIG. 6, thesystem 600 includes processing circuitry 601 that is operatively coupledto input/output interface 605, a row/column ADC bank 609, networkconnection interface 611, memory 615 including random access memory(RAM) 617, read-only memory (ROM) 619, and storage medium 621 or thelike, communication subsystem 631, power source 633, and/or any othercomponent, or any combination thereof. Storage medium 621 includesoperating system 623, application program 625, and data 627. In otherembodiments, storage medium 621 may include other similar types ofinformation. Certain systems may utilize all of the components shown inFIG. 6, or only a subset of the components. The level of integrationbetween the components may vary from one system to another system.Further, certain systems may contain multiple instances of a component,such as multiple processors, memories, neural networks, networkconnection interfaces, transceivers, etc.

In FIG. 6, processing circuitry 601 may be configured to processcomputer instructions and data. Processing circuitry 601 may beconfigured to implement any sequential state machine operative toexecute machine instructions stored as machine-readable computerprograms in the memory, such as one or more hardware-implemented statemachines (e.g., in discrete logic, FPGA, ASIC, etc.); programmable logictogether with appropriate firmware; one or more stored program,general-purpose processors, such as a microprocessor or Digital SignalProcessor (DSP), together with appropriate software; or any combinationof the above. For example, the processing circuitry 601 may include twocentral processing units (CPUs). Data may be information in a formsuitable for use by a computer.

In the depicted embodiment, input/output interface 605 may be configuredto provide a communication interface to an input device, output device,or input and output device. The system 600 may be configured to use anoutput device via input/output interface 605. An output device may usethe same type of interface port as an input device. For example, a USBport may be used to provide input to and output from the system 600. Theoutput device may be a speaker, a sound card, a video card, a display, amonitor, a printer, an actuator, an emitter, a smartcard, another outputdevice, or any combination thereof. The system 600 may be configured touse an input device via input/output interface 605 to allow a user tocapture information into the system 600. The input device may include atouch-sensitive or presence-sensitive display, a camera (e.g., a digitalcamera, a digital video camera, a web camera, etc.), a microphone, asensor, a mouse, a trackball, a directional pad, a trackpad, a scrollwheel, a smartcard, and the like. The presence-sensitive display mayinclude a capacitive or resistive touch sensor to sense input from auser. A sensor may be, for instance, an accelerometer, a gyroscope, atilt sensor, a force sensor, a magnetometer, an optical sensor, aninfrared sensor, a proximity sensor, another like sensor, or anycombination thereof. For example, the input device may be an opticalsensor and an infrared sensor.

In FIG. 6, the row/column ADC bank 609 may be configured to scan amatrix of contacts of the sensor pad 651. The network connectioninterface 611 may be configured to provide a communication interface tonetwork 643 a. The network 643 a may encompass wired and/or wirelessnetworks such as a local-area network (LAN), a wide-area network (WAN),a computer network, a wireless network, a telecommunications network,another like network or any combination thereof. For example, network643 a may comprise a Wi-Fi network. The network connection interface 611may be configured to include a receiver and a transmitter interface usedto communicate with one or more other devices over a communicationnetwork according to one or more communication protocols, such asEthernet, TCP/IP, SONET, ATM, or the like. The network connectioninterface 611 may implement receiver and transmitter functionalityappropriate to the communication network links (e.g., optical,electrical, and the like). The transmitter and receiver functions mayshare circuit components, software or firmware, or alternatively may beimplemented separately.

The RAM 617 may be configured to interface via a bus 603 to theprocessing circuitry 601 to provide storage or caching of data orcomputer instructions during the execution of software programs such asthe operating system, application programs, and device drivers. The ROM619 may be configured to provide computer instructions or data toprocessing circuitry 601. For example, the ROM 619 may be configured tostore invariant low-level system code or data for basic system functionssuch as basic input and output (I/O), startup, or reception ofkeystrokes from a keyboard that are stored in a non-volatile memory. Thestorage medium 621 may be configured to include memory such as RAM, ROM,programmable read-only memory (PROM), erasable programmable read-onlymemory (EPROM), electrically erasable programmable read-only memory(EEPROM), magnetic disks, optical disks, floppy disks, hard disks,removable cartridges, or flash drives. In one example, the storagemedium 621 may be configured to include an operating system 623, anapplication program 625 such as a produce item selection program, awidget or gadget engine or another application, and a data file 627. Thestorage medium 621 may store, for use by the system 600, any of avariety of various operating systems or combinations of operatingsystems.

The storage medium 621 may be configured to include a number of physicaldrive units, such as redundant array of independent disks (RAID), floppydisk drive, flash memory, USB flash drive, external hard disk drive,thumb drive, pen drive, key drive, high-density digital versatile disc(HD-DVD) optical disc drive, internal hard disk drive, Blu-Ray opticaldisc drive, holographic digital data storage (HDDS) optical disc drive,external mini-dual in-line memory module (DIMM), synchronous dynamicrandom access memory (SDRAM), external micro-DIMM SDRAM, smartcardmemory such as a subscriber identity module or a removable user identity(SIM/RUIM) module, other memory, or any combination thereof. The storagemedium 621 may allow the system 600 to access computer-executableinstructions, application programs or the like, stored on transitory ornon-transitory memory media, to off-load data, or to upload data. Anarticle of manufacture, such as one utilizing a communication system maybe tangibly embodied in the storage medium 621, which may comprise adevice readable medium.

In FIG. 6, the processing circuitry 601 may be configured to communicatewith network 643 b using the communication subsystem 631. The network643 a and the network 643 b may be the same network or networks ordifferent network or networks. The communication subsystem 631 may beconfigured to include one or more transceivers used to communicate withthe network 643 b. For example, the communication subsystem 631 may beconfigured to include one or more transceivers used to communicate withone or more remote transceivers of another system capable of wirelesscommunication according to one or more communication protocols, such asIEEE 802.11, CDMA, WCDMA, GSM, LTE, UTRAN, WiMax, or the like. Eachtransceiver may include transmitter 633 and/or receiver 635 to implementtransmitter or receiver functionality, respectively, appropriate to theRAN links (e.g., frequency allocations and the like). Further,transmitter 633 and receiver 635 of each transceiver may share circuitcomponents, software or firmware, or alternatively may be implementedseparately.

In the illustrated embodiment, the communication functions of thecommunication subsystem 631 may include data communication, voicecommunication, multimedia communication, short-range communications suchas Bluetooth, near-field communication, location-based communicationsuch as the use of the global positioning system (GPS) to determine alocation, another like communication function, or any combinationthereof. For example, the communication subsystem 631 may includecellular communication, Wi-Fi communication, Bluetooth communication,and GPS communication. Further, the communication subsystem 631 mayinclude functions to determine the presence or proximity of a wirelessdevice to the system 600 or any of its components such as the sensor pad651. For example, the communication subsystem 631 may include aBluetooth transceiver that is operable to determine the presence orproximity of a wireless device to the sensor pad 651, with the wirelessdevice also having a Bluetooth transceiver. A skilled artisan willreadily recognize various algorithms for determining the presence orproximity of a wireless device. In addition, the system 600 via theBluetooth transceiver of the communication subsystem 631 may obtainvarious information from each detected Bluetooth device such as a devicename, a Bluetooth address, a device type, a first detection time, a lastdetection time, or the like. A wireless device may be referred to as auser equipment (UE), a mobile station (MS), a terminal, a cellularphone, a cellular handset, a personal digital assistant (PDA), asmartphone, a wireless phone, an organizer, a handheld computer, adesktop computer, a laptop computer, a tablet computer, a set-top box, atelevision, an appliance, a game device, a medical device, a displaydevice, a metering device, or some other like terminology. The network643 b may encompass wired and/or wireless networks such as a local-areanetwork (LAN), a wide-area network (WAN), a computer network, a wirelessnetwork, a telecommunications network, another like network or anycombination thereof. For example, the network 643 b may be a cellularnetwork, a Wi-Fi network, and/or a near-field network. The power source613 may be configured to provide alternating current (AC) or directcurrent (DC) power to components of the system 600.

The features, benefits and/or functions described herein may beimplemented in one of the components of the system 600 or partitionedacross multiple components of the system 600. Further, the features,benefits, and/or functions described herein may be implemented in anycombination of hardware, software or firmware. In one example,communication subsystem 631 may be configured to include any of thecomponents described herein. Further, the processing circuitry 601 maybe configured to communicate with any of such components over the bus603. In another example, any of such components may be represented byprogram instructions stored in memory that when executed by theprocessing circuitry 601 perform the corresponding functions describedherein. In another example, the functionality of any of such componentsmay be partitioned between the processing circuitry 601 and thecommunication subsystem 631. In another example, the non-computationallyintensive functions of any of such components may be implemented insoftware or firmware and the computationally intensive functions may beimplemented in hardware.

FIG. 7 illustrates another embodiment of a method 700 of detecting,identifying and classifying objects positioned on a surface inaccordance with various aspects as described herein. In FIG. 7, themethod 700 starts, for instance, at block 701 where it includes, duringa scan of a matrix of contacts having rows and columns of contacts,receiving, by a processor, from each row and column of contacts, anindication of a resistance or capacitance of that row or column ofcontacts. Further, each contact corresponds to a different surface areaof the pad and has a first electrical conductor positioned on a firstlayer and a second electrical conductor positioned opposite to the firstconductor on a second layer. Also, at least one of the first and secondconductors is operable to vary in resistance or capacitance based on anamount of pressure applied to that conductor. Each contact is configuredto enable an electrical connection between the first and secondconductors with a resistance or capacitance that varies based on anamount of pressure applied to a corresponding area of the pad when anobject is positioned on that pad. In addition, the matrix of contacts isoperable to be scanned to obtain resistances or capacitances for therows and columns of contacts so as to enable detection of an objectplaced on or removed from the pad.

In FIG. 7, the method 700 may include determining whether an object hasbeen placed on or removed from the pad based on the scanned resistancesor capacitances of the rows and columns of contacts, as represented byblock 703. At block 705, the method 700 may include determining at leastone of a size, a shape, a location, a center of mass and a weight of theobject based on the resistances or capacitances of at least one row andcolumn of contacts responsive to determining that an object has beenplaced on the pad. At block 707, the method 700 may include determiningwhether an object placed on the pad is properly positioned on the padbased on at least one of the size, shape, location, center of mass andweight of the object and a predetermined object map for that pad. Thispredetermined object map represents the expected placement of certainobjects on the pad, with each object being characterized by at least oneof the size, shape, location on the pad, center of mass, weight, and thelike.

In another embodiment, the method may include determining how manyobjects having a same weight are in a container (e.g., a box of the samecandy bars) positioned on a sensor pad, removed from that container orplaced in that container based on at least one of the size, shape,location on the pad, center of mass, weight, and the like.

In another embodiment, the method may include determining how manyobjects having a same weight are in a container positioned on a sensorpad, removed from that container or placed in that container based onmeasured resistances or capacitances for the rows and columns of acontact matrix of the pad or one or more pressure measurements obtainedfrom one or more weight sensors disposed in the pad.

In another embodiment, the method may include determining how manyobjects having a same weight are in a container positioned on a sensorpad, removed from that container or placed in that container based on apredetermined object map that represents at least one of an expectedplacement of the container on the pad, a weight of the container whenfull of the objects having the same weight, a weight of the containerwhen empty, a weight of each object having the same weight, and thelike.

In another embodiment, the method may include determining whether anobject placed into a container positioned on a sensor pad and havingobjects of the same weight is one of those objects having the sameweight based on at least one of the size, shape, location on the pad,center of mass, weight, and the like.

In another embodiment, the method may include determining whether anobject placed in a container positioned on a sensor pad and havingobjects of the same weight is one of those objects having the sameweight based on measured resistances or capacitances for the rows andcolumns of a contact matrix of the pad or one or more pressuremeasurements obtained from one or more weight sensors disposed in thepad.

In another embodiment, the method may include determining whether anobject placed in a container positioned on a sensor pad and havingobjects of the same weight is one of those objects having the sameweight based on a predetermined object map that represents at least oneof an expected placement of the container on the pad, a weight of thecontainer when full of the objects having the same weight, a weight ofthe container when empty, a weight of each object having the sameweight, and the like.

Those skilled in the art will also appreciate that embodiments hereinfurther include corresponding computer programs.

A computer program comprises instructions which, when executed on atleast one processor of an apparatus, cause the apparatus to carry outany of the respective processing described above. A computer program inthis regard may comprise one or more code modules corresponding to themeans or units described above.

Embodiments further include a carrier containing such a computerprogram. This carrier may comprise one of an electronic signal, opticalsignal, radio signal, or computer readable storage medium.

In this regard, embodiments herein also include a computer programproduct stored on a non-transitory computer readable (storage orrecording) medium and comprising instructions that, when executed by aprocessor of an apparatus, cause the apparatus to perform as describedabove.

Embodiments further include a computer program product comprisingprogram code portions for performing the steps of any of the embodimentsherein when the computer program product is executed by a computingdevice. This computer program product may be stored on a computerreadable recording medium.

Additional embodiments will now be described. At least some of theseembodiments may be described as applicable in certain contexts and/orwireless network types for illustrative purposes, but the embodimentsare similarly applicable in other contexts and/or wireless network typesnot explicitly described.

In one embodiment, a system for detecting, identifying and classifyingobjects on a pad surface may include a scanning matrix of sensitiveelements and a computing unit (e.g., microcontroller). Each sensorelement of the matrix may include, for example, a diode and a contactgroup connected in series with it. A contact group may include, forexample, two contacts with each contact located on an elastic surface.In one example, two elastic surfaces are utilized with each contactlocated on one of the elastic surfaces opposite the other contactlocated on the other elastic surface. Further in this example, an air orliquid dielectric may be used between the two elastic surfaces.Alternatively, or in addition, both contacts may be located next to eachother on a single elastic surface. When mechanical pressure is appliedto one surface, the two contacts may be brought together to form anelectrical contact.

In another embodiment, a scanning matrix may be formed from a multilayerfilm structure. At least two layers of the multilayer film structure mayhave conductors. When an electrical contact is formed between a pair ofcontacts, a signal may be generated and sent to a computing unit. Basedon signals received from various contact pairs within the scanningmatrix, the computing unit may be able to calculate a localization ofclosed contacts. Based on the calculated localization information, asize, a shape, a center of mass, a weight, and a location of an objectplaced on the scanning matrix may be approximated or otherwisedetermined. The determined size, shape, center of mass, weight, andlocation of the object may be utilized to classify or otherwise identifythe object placed on the scanning matrix.

The detection system may include communication protocols, which allowsthem to be included in various topological schemes. This providescoverage of surfaces of different areas of sensitive elements, whileworking as a single unit.

In one embodiment, a multi-dimensional detection of the presence andweight of the goods placed on or removed from a sensor pad is provided.Many of the existing approaches position sensors at predeterminedlocations in the pad so that they are directly below each retail item.As such, this approach localizes each sensor to specific surface areasof the pad that are expected to have retail items placed thereon so thateach retail item or group of retail items corresponds to a sensor thatweighs the retail item or detects its presence. In this embodiment, thedetection of the placement of retail items on the pad and thedetermination of the characteristics of such items so as to identify andclassify those items have no dimensional restrictions and can beimplemented for retail items having any size, weight, shape, location,contour, proportion, or like characteristic while maintaining thenecessary functionality to determine these characteristics. However, toachieve this implementation, the pad must be made of a sufficientlyelastic material that allows these characteristics to be maintained whena retail item is placed on the pad.

In another embodiment, two or more characteristics of retail items areused to determine whether a retail item is placed on or removed from thepad. These characteristics are weight, center of mass and pointlocations of the retail object placed on the pad.

In another embodiment, different combinations of weight, center of massand point locations of the retail object placed on the pad are used todetermine the placement/removal of retail items on/from the pad.

In another embodiment, the determination of the presence of certainretail items such as a bottle, box or can requires the use of pointlocations of the retail object placed on the pad. However, theadditional determination of the weight of this product in thisembodiment provides advantages for the subsequent re-determination ofwhen this retail item is fenced for a video camera (e.g., the retailitem is placed in a back row of the pad). In this case, the weight ofthe retail item and its contour may be sufficient to identify the goods.

In another embodiment, the center of mass is determined at the time aretail item is placed on or removed from the pad based on weightmeasurements of the weight sensors that are on a single pad plane andthat correspond to the surface area of the pad that the retail item isplace on or removed from that pad.

In another embodiment the weight of a group of retail items may be usedto determine whether one of the retail items of the group has beenremoved from or returned to the group while the group is positioned onthe pad. For instance, for a box having a plurality of chocolatespositioned on the pad, the removal or return of one chocolate does notchange the point locations of the box placed on the pad. However, eachremoval or return of a chocolate changes the center of mass of the boxin such a way that it indicates from where that chocolate was removed orreturned.

FIG. 8 illustrates a use case of another embodiment of a system 800 ofdetecting, identifying and classifying objects positioned on a surfacein accordance with various aspects as described herein. In FIG. 8, anobject 802 is placed on the sensor pad 804 having contacts 806 a-d andweight sensors 807 a-f. In one example, the weight of the object 802applies pressure to the contacts 806 a-d and the weight sensors 807b,c,e,f. In response, a processor may determine at least one of a size,a shape, a center of mass, a weight, and a location of the object 802based on any combination of signals received from the contacts 806 a-dand the weight sensors 807 b,c,e,f. In one example, the weight of theobject 802 is determined based on the weight sensors 807 b,c,e,f. Inanother example, the center of mass of the object 802 is determinedbased on the weight sensors 807 b,c,e,f. In yet another example, theshape of the object 802 is determined by the contacts 806 a-d. In stillyet another example, the location of the object 802 is determined by thecontacts 806 a-d.

FIG. 9 illustrates another embodiment of a sensor pad 900 in accordancewith various aspects as described herein. In FIG. 9, the sensor pad 900is configured to have a first layer 901 with a first matrix ofconductors (e.g., conductive layer), a second layer 903 (e.g., insulatorsuch as air), a third layer 905 with a second matrix of conductors(e.g., conductive layer), a fourth layer 907 (e.g., rigid foundationlayer), a plurality of weight sensors 911 a-d disposed on the bottom ofthe fourth layer 907, a fifth layer 909 (e.g., protective layer), thelike, or any combination thereof. The first, second and third layers901, 903, 905 include a matrix of contacts and may represent any of thesensor pad structures described herein such as by FIGS. 4A-B. The fourthlayer 907 is configured to be structurally rigid so that at least twoweight sensors 911 a-d are operable to measure a weight of an objectplaced on a certain surface area of the pad 900. In one example, thefourth layer 907 is configured to be structurally rigid so that at leastfour weight sensors 911 a-d are operable to measure the weight of anobject placed towards the center of the surface area of the pad. Inanother example, the fourth layer 907 is configured to be structurallyrigid so that at least two weight sensors 911 a-d are operable tomeasure the weight of an object placed towards the perimeter of thesurface area of the pad. The fifth layer 909 is an optional layer thatis configured to protect the weight sensors 911 a-d from any normal orexcessive wear and tear.

In another embodiment, the surface area of a sensor pad that correspondsto a non-negligible measurement by a weight sensor is greater than thesurface area of the pad that corresponds to a non-negligible measurementby a contact.

The previous detailed description is merely illustrative in nature andis not intended to limit the present disclosure, or the application anduses of the present disclosure. Furthermore, there is no intention to bebound by any expressed or implied theory presented in the precedingfield of use, background, summary, or detailed description. The presentdisclosure provides various examples, embodiments and the like, whichmay be described herein in terms of functional or logical blockelements. The various aspects described herein are presented as methods,devices (or apparatus), systems, or articles of manufacture that mayinclude a number of components, elements, members, modules, nodes,peripherals, or the like. Further, these methods, devices, systems, orarticles of manufacture may include or not include additionalcomponents, elements, members, modules, nodes, peripherals, or the like.

Furthermore, the various aspects described herein may be implementedusing standard programming or engineering techniques to producesoftware, firmware, hardware (e.g., circuits), or any combinationthereof to control a computing device to implement the disclosed subjectmatter. It will be appreciated that some embodiments may be comprised ofone or more generic or specialized processors such as microprocessors,digital signal processors, customized processors and field programmablegate arrays (FPGAs) and unique stored program instructions (includingboth software and firmware) that control the one or more processors toimplement, in conjunction with certain non-processor circuits, some,most, or all of the functions of the methods, devices and systemsdescribed herein. Alternatively, some or all functions could beimplemented by a state machine that has no stored program instructions,or in one or more application specific integrated circuits (ASICs), inwhich each function or some combinations of certain of the functions areimplemented as custom logic circuits. Of course, a combination of thetwo approaches may be used. Further, it is expected that one of ordinaryskill, notwithstanding possibly significant effort and many designchoices motivated by, for example, available time, current technology,and economic considerations, when guided by the concepts and principlesdisclosed herein will be readily capable of generating such softwareinstructions and programs and ICs with minimal experimentation.

The term “article of manufacture” as used herein is intended toencompass a computer program accessible from any computing device,carrier, or media. For example, a computer-readable medium may include:a magnetic storage device such as a hard disk, a floppy disk or amagnetic strip; an optical disk such as a compact disk (CD) or digitalversatile disk (DVD); a smart card; and a flash memory device such as acard, stick or key drive. Additionally, it should be appreciated that acarrier wave may be employed to carry computer-readable electronic dataincluding those used in transmitting and receiving electronic data suchas electronic mail (e-mail) or in accessing a computer network such asthe Internet or a local area network (LAN). Of course, a person ofordinary skill in the art will recognize many modifications may be madeto this configuration without departing from the scope or spirit of thesubject matter of this disclosure.

Throughout the specification and the embodiments, the following termstake at least the meanings explicitly associated herein, unless thecontext clearly dictates otherwise. Relational terms such as “first” and“second,” and the like may be used solely to distinguish one entity oraction from another entity or action without necessarily requiring orimplying any actual such relationship or order between such entities oractions. The term “or” is intended to mean an inclusive “or” unlessspecified otherwise or clear from the context to be directed to anexclusive form. Further, the terms “a,” “an,” and “the” are intended tomean one or more unless specified otherwise or clear from the context tobe directed to a singular form. The term “include” and its various formsare intended to mean including but not limited to. References to “oneembodiment,” “an embodiment,” “example embodiment,” “variousembodiments,” and other like terms indicate that the embodiments of thedisclosed technology so described may include a particular function,feature, structure, or characteristic, but not every embodimentnecessarily includes the particular function, feature, structure, orcharacteristic. Further, repeated use of the phrase “in one embodiment”does not necessarily refer to the same embodiment, although it may. Theterms “substantially,” “essentially,” “approximately,” “about” or anyother version thereof, are defined as being close to as understood byone of ordinary skill in the art, and in one non-limiting embodiment theterm is defined to be within 10%, in another embodiment within 5%, inanother embodiment within 1% and in another embodiment within 0.5%. Adevice or structure that is “configured” in a certain way is configuredin at least that way, but may also be configured in ways that are notlisted.

What is claimed is:
 1. A sensor pad, comprising: a plurality ofelectrical contacts disposed in the sensor pad with each contactcorresponding to a certain surface area of the sensor pad, each contactbeing operable to have an electrical connection activated or deactivatedwhen an object is placed on or removed from a corresponding surface areaof the sensor pad and to indicate whether that electrical connection isactivated or deactivated; and a plurality of weight sensors disposed inthe sensor pad with each sensor corresponding to a certain surface areaof the sensor pad and being operable to measure a pressure applied tothat surface area when an object is placed on that surface area, withthe surface area that corresponds to each weight sensor being greaterthan the surface area that corresponds to each contact.
 2. The sensorpad of claim 1, wherein the electrical connection indications obtainedfrom the contacts and the pressure measurements obtained from the weightsensors enable determining that an object is placed on or removed from asurface of the sensor pad.
 3. The sensor pad of claim 1, wherein eachcontact is configured to include a first electrical conductor disposedon a first layer of the sensor pad and a second electrical conductordisposed opposite to the first conductor on a second layer of the sensorpad, with each contact being further operable to have an electricalconnection between the first and second conductors activated ordeactivated when an object is placed on or removed from a correspondingsurface area of the sensor pad.
 4. The sensor pad of claim 3, wherein atleast one of the first and second conductors of each contact is operableto vary in resistance or capacitance based on an amount of pressureapplied to that conductor.
 5. The sensor pad of claim 3, wherein eachcontact is further operable to have an electrical connection between thefirst and second conductors with a resistance or capacitance that variesbased on an amount of pressure applied to a corresponding surface areaof the sensor pad when an object is placed on that surface.
 6. Thesensor pad of claim 5, wherein each electrical connection indicationincludes a resistance or capacitance of the corresponding contact. 7.The sensor pad of claim 1, wherein the contacts are disposed in thesensor pad as a matrix of rows and columns of electrical contacts. 8.The sensor pad of claim 7, wherein the matrix of contacts is operable tobe scanned to obtain resistances or capacitances of the rows and columnsof contacts so that a resistance or capacitance can be determined foreach contact based on the resistances and capacitances of the rows andcolumns of contacts.
 9. The sensor pad of claim 8, wherein theresistance or capacitance of each contact indicates whether that contacthas an electrical connection that is activated or deactivated.
 10. Thesensor pad of claim 1, wherein the weight sensors are disposed on alayer of the sensor pad that is different from a layer of the sensor padhaving the contacts.
 11. The sensor pad of claim 1, wherein a layer ofthe sensor pad having the contacts is between the surface of the sensorpad and a layer of the sensor pad having the weight sensors.
 12. Thesensor pad of claim 1, wherein a layer of the sensor pad having a rigidstructure is disposed between a layer of the sensor pad having thecontacts and a layer of the sensor pad having the weight sensors. 13.The sensor pad of claim 12, wherein the rigid structure is operable toenable at least two weight sensors to measure a pressure applied to asurface area of the sensor pad when an object is placed on that surfacearea.
 14. The sensor pad of claim 12, wherein the rigid structure isoperable to enable at least four weight sensors to measure a pressureapplied to a certain surface area of the sensor pad when an object isplaced towards a center of that surface area.
 15. The sensor pad ofclaim 1, wherein a surface area of the sensor pad that corresponds toone weight sensor overlaps a surface area of the sensor pad thatcorresponds to a nother weight sensor.
 16. The sensor pad of claim 1,wherein a surface area of the sensor pad that corresponds to one contactdoes not overlap a surface area of the sensor pad that corresponds toanother contact.
 17. The sensor pad of claim 1, wherein a surface areaof the sensor pad that corresponds to one contact overlaps a surfacearea of the sensor pad that corresponds to another contact.
 18. A methodperformed by a processor of detecting an object placed on a surface of asensor pad, comprising: obtaining, from each of a plurality ofelectrical contacts disposed in the sensor pad, an indication of whetheran electrical connection of that contact is activated or deactivated,with each contact corresponding to a certain surface area of the sensorpad and being operable to have an electrical connection activated ordeactivated when an object is placed on or removed from that surfacearea; obtaining, from each of a plurality of weight sensors disposed inthe sensor pad, a measurement of an amount of pressure applied to asurface area of the sensor pad that corresponds to that sensor, witheach sensor corresponding to a certain surface area of the sensor padand being operable to measure a pressure applied to that surface areawhen an object is placed on that surface area, with the surface areathat corresponds to each weight sensor being greater than the surfacearea that corresponds to each contact; and determining that an object isplaced on the surface of the sensor pad based on the electricalconnection indications and the pressure measurements.
 19. The method ofclaim 18, further comprising: in response to determining that an objectis placed on the surface of the sensor pad, determining at least one ofa size, a shape, a location, a center of mass, and a weight of theobject based on the electrical connection indications and the pressuremeasurements.
 20. The method of claim 19, further comprising:determining that an object is properly positioned on the surface of thesensor pad based on at least one of a size, a shape, a location, acenter of mass, a weight of the object, and a predetermined object mapfor the surface of that sensor pad.
 21. A system, comprising: aprocessor; a sensor pad, comprising: a plurality of electrical contactsdisposed in the sensor pad with each contact corresponding to adifferent surface area of the sensor pad, each contact being operable tohave an electrical connection activated or deactivated when an object isplaced on or removed from a corresponding surface area of the sensor padand to indicate whether that electrical connection is activated ordeactivated; and a plurality of weight sensors disposed in the sensorpad with each sensor corresponding to a different surface area of thesensor pad and being operable to measure a pressure applied to thatsurface area when an object is placed on that surface area, with thesurface area that corresponds to each weight sensor being greater thanthe surface area that corresponds to each contact; a plurality of firstanalog-to-digital converters (ADCs) operationally coupled between theprocessor and the contacts and operable to obtain the electricalconnection indications from the contacts; a plurality of second ADCsoperationally coupled between the processor and the weight sensors andoperable to obtain pressure measurements from the sensors; and whereinthe processor is configured to determine that an object is placed on orremoved from the surface of the sensor pad based on the electricalconnection indications and the pressure measurements.